package com.photography.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.photography.common.Result;
import com.photography.entity.Product;
import com.photography.entity.User;

public interface ProductService extends IService<Product> {

    /**
     * 新增产品
     * @param product 产品信息
     * @return 结果
     */
    Result addProduct(Product product);
    /**
     * 删除产品
     * @param productId 产品ID
     * @return 结果
     */
    Result deleteProduct(Integer productId);

    /**
     * 更新产品信息
     * @param product 产品信息
     * @return 结果
     */
    Result updateProduct(Product product);

    /**
     * 根据id查询产品
     * @param productId 产品id
     * @return 结果
     */
    Result findProductById(Integer productId);

    /**
     * 分页查询产品
     * @param page 分页参数
     * @param category 标签（可选）
     * @param price 价格（可选）
     * @return 分页结果
     */
    Page<Product> getProductPage(Page<Product> page, String price,String category,String search);


    /**
     * 模糊搜索产品
     * @param page 分页参数
     * @param keyword 搜索关键词，支持产品名称、英文名称、描述、适用场景、标签的模糊匹配
     * @return 分页结果
     */
    Page<Product> search(Page<Product> page, String keyword);
}
